destroy display->xid_ht as late as possible (right before XCloseDisplay)
authorMichael Natterer <mitch@imendio.com>
Tue, 15 Nov 2005 14:42:48 +0000 (14:42 +0000)
committerMichael Natterer <mitch@src.gnome.org>
Tue, 15 Nov 2005 14:42:48 +0000 (14:42 +0000)
2005-11-15  Michael Natterer  <mitch@imendio.com>

* gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
display->xid_ht as late as possible (right before XCloseDisplay)
because it still needs to be around when the display's screens are
finalized. (#85715)

ChangeLog
ChangeLog.pre-2-10
gdk/x11/gdkdisplay-x11.c

index 6b160a594d006f006215a72f5f301da745f63fd5..90ddf99ad3dfa3614f0a0c231297e3d633b387d1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2005-11-15  Michael Natterer  <mitch@imendio.com>
+
+       * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
+       display->xid_ht as late as possible (right before XCloseDisplay)
+       because it still needs to be around when the display's screens are
+       finalized. (#85715)
+
 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/gtkselection.c (gtk_selection_data_set_uris): Don't
index 6b160a594d006f006215a72f5f301da745f63fd5..90ddf99ad3dfa3614f0a0c231297e3d633b387d1 100644 (file)
@@ -1,3 +1,10 @@
+2005-11-15  Michael Natterer  <mitch@imendio.com>
+
+       * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
+       display->xid_ht as late as possible (right before XCloseDisplay)
+       because it still needs to be around when the display's screens are
+       finalized. (#85715)
+
 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/gtkselection.c (gtk_selection_data_set_uris): Don't
index c3da587ddffba3791404b086f3be7c9d3fcade3e..b69d6a211d7692350402d7ce767210ac20c84cf9 100644 (file)
@@ -769,9 +769,6 @@ gdk_display_x11_finalize (GObject *object)
   g_slist_foreach (display_x11->event_types, (GFunc)g_free, NULL);
   g_slist_free (display_x11->event_types);
 
-  /* X ID hashtable */
-  g_hash_table_destroy (display_x11->xid_ht);
-
   /* input GdkDevice list */
   /* FIXME need to write finalize fct */
   g_list_foreach (display_x11->input_devices, (GFunc) g_object_unref, NULL);
@@ -789,6 +786,9 @@ gdk_display_x11_finalize (GObject *object)
 
   g_free (display_x11->startup_notification_id);
 
+  /* X ID hashtable */
+  g_hash_table_destroy (display_x11->xid_ht);
+
   XCloseDisplay (display_x11->xdisplay);
 
   G_OBJECT_CLASS (parent_class)->finalize (object);